import { defineConfig, Plugin } from 'vite'
import vue from '@vitejs/plugin-vue'
import path from 'path'
import fs from 'fs-extra'

// const copyPackageJsonPlugin = (): Plugin => ({
//   name: 'copy-package-json',
//   apply: 'build',
//   closeBundle() {
//     const sourcePath = 'package.npm.json'
//     const targetPath = 'dist/package.json'

//     // 读取 package.npm.json
//     const packageJson = JSON.parse(fs.readFileSync(sourcePath, 'utf-8'))

//     // ✅ 自动增加版本号
//     const versionParts = packageJson.version.split('.')
//     versionParts[2] = Number(versionParts[2]) + 1 // patch 加 1
//     packageJson.version = versionParts.join('.')

//     // ✅ 写入到 dist 目录
//     fs.writeFileSync(targetPath, JSON.stringify(packageJson, null, 2), 'utf-8')

//     // ✅ 同时拷贝 README.md
//     fs.copyFileSync('README.md', 'dist/README.md')

//     console.log(`🎉 已自动升级版本号：${packageJson.version}`)
//   }
// })


export default defineConfig({
  plugins: [
    vue(),
  ],
  // build: {
  //   target: 'esnext',
  //   lib: {
  //     entry: path.resolve(__dirname, 'src/components/index.ts'),
  //     name: 'FlexLayout',
  //     formats: ['es']
  //   },
  //   rollupOptions: {
  //     external: ['vue'],
  //     output: {
  //       exports: 'named',
  //       entryFileNames: 'entry/[name].js',
  //       chunkFileNames: 'chunks/[name]-[hash].js',
  //       assetFileNames: 'assets/[name]-[hash][extname]'
  //     }
  //   }
  // },
  resolve: {
    alias: {
      '@': path.resolve(__dirname, './src')
    }
  }
})
